home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
listings
/
v_09_03
/
9n03128a
< prev
next >
Wrap
Text File
|
1991-01-14
|
480b
|
26 lines
jmp_buf env;
int valid_env = 0;
void
sig_handler(sig)
int sig;
{
assert(sig >= 0 && sig < NSIG);
if (!signals[sig].action) {
/* always an error except when sig == 0 */
if (sig == 0) return;
fprintf(stderr,"unexpected signal delivered - %s (%d)\n",
signal_to_string(sig),sig);
} else {
signal(sig, sig_handler);
eval(signals[sig].action);
}
if (valid_env) longjmp(env,1);
}